package com.yqkj.zysoft.upms.service;

import com.baomidou.mybatisplus.extension.service.IService;
import  com.project.easy.common.util.dto.PageResDto;
import com.yqkj.zysoft.upms.entity.FrameworkRole;
import com.yqkj.zysoft.upms.entity.dto.FrameWorkRoleAddRequest;
import com.yqkj.zysoft.upms.entity.dto.FrameWorkRoleUpdateRequest;
import com.yqkj.zysoft.upms.entity.dto.PageRoleRequest;

/**
 * <p>
 * 角色 服务类
 * </p>
 *
 * @author GreatorMan.cool
 * @since 2022-08-10
 */
public interface IFrameworkRoleService extends IService<FrameworkRole> {

    /**
     *获取权限集合
     * @param roleId ID
     * @return 返回功能集合
     */
    public String getRoleConfigAuth(Long roleId);
    /**
     *更新权限功能
     * @param roleId 角色ID
     * @param authCodes 权限ID
     * @return true 成功
     */
    public Boolean updateRoleConfigAuth(String authCodes, Long roleId);

    /**
     * 新增
     * @param frameWorkRoleAddRequest 参数
     * @return 返回 true 成功 false 失败
     */
    Long add(FrameWorkRoleAddRequest frameWorkRoleAddRequest);

    /**
     * 更新数据
     * @param frameWorkRoleUpdateRequest 参数
     * @return true 成功 false 失败
     */
    Boolean updateObject(FrameWorkRoleUpdateRequest frameWorkRoleUpdateRequest);
    /**
     * 分页
     * @param pageRoleRequest 分页查询条件
     * @return 返回数据
     */
    PageResDto<FrameworkRole> pageList(PageRoleRequest pageRoleRequest);
    /**
     * 验证数据
     * @param  workRoleUpdateRequest 参数
     * @return true 验证成功 false 验证失败
     */
    Boolean verifyCode(FrameWorkRoleUpdateRequest workRoleUpdateRequest);
    /**
     * 启用
     * @param id ID
     * @return true 启用成功 false 启用失败
     */
    public Boolean able(Long id);

    /**
     * 启用
     * @param id ID
     * @return true 启用成功 false 启用失败
     */
    public Boolean disAble(Long id);

}
